package com.tjetc;

/**
 * 静态内部类单例
 */
public class InnerSingleton {
    // 1.构造器私有化
    private InnerSingleton(){}

    // 2.提供一个外部创建实例的方法
    public static InnerSingleton getInstance(){
        return InnerSingletonHolder.instance;
    }

    // 3.定义一个静态内部类来创建实例
    // 利用了类的特性：当类没有被使用的时候，不会执行
    private static class InnerSingletonHolder{
        private static final InnerSingleton instance = new InnerSingleton();
    }
}
